package file;

import java.io.File;
import java.io.FileFilter;

/**
 * 有条件的获取一个目录中的子项
 * listFiles支持一个重载方法，允许我们传入一个文件过滤器，然后将对应目录下所有满足
 * 过滤器要求的子项返回
 */
public class ListFilesDemo2 {
    public static void main(String[] args) {
        //获取当前目录下所有名字以"."开头的子项
        File dir = new File(".");
        if(dir.isDirectory()){
            //使用匿名内部类形式创建一个文件过滤器
            FileFilter fileFilter = new FileFilter() {
                public boolean accept(File f) {
                    return f.getName().startsWith(".");
                }
            };

            File[] subs = dir.listFiles(fileFilter);
            for(File sub : subs){
                System.out.println(sub.getName());
            }
        }
    }
}
